package homework;

public class HomeWork04 {
    public static void main(String[] args) {
        //分析Hashset 和 TreeSet分别如何实现去重的
        /**
         * 1.HashSet去重机制：hashCode() + equals() ,底层先通过存入对象，进入运算得到一个
         * hash值，通过hash值得到对应的索引。如果发现table索引所在的位置没有数据，就直接存放
         * 如果有数据，就进行equals(程序员自行决定)比较（遍历比较），如果比较后不相同，就加入，
         * 否则就不加入。
         *
         * 2.TreeSet 的去重机制：如果传入了Comparator匿名对象，就使用实现的compare去重。
         * 如果方法返回为0，就认为是相同的元素/数据，就不添加，如果你没有传入一个Comparator
         * 匿名对象，则以你添加的对象实现Compareable接口的compareTo去重.
         *
         *
         */
    }
}
